package cn.stylefeng.guns.sys.modular.system.mapper;

import cn.stylefeng.guns.sys.modular.system.entity.GcgWsjd;
import cn.stylefeng.guns.sys.modular.system.entity.GcgWsjdShenpi;
import cn.stylefeng.guns.sys.modular.system.entity.GcgWsjdShenpiXq;
import cn.stylefeng.guns.sys.modular.system.entity.PictureDownMsg;
import cn.stylefeng.guns.sys.modular.system.model.params.GcgWsjdParam;
import cn.stylefeng.guns.sys.modular.system.model.result.GcgWsjdResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface GcgWsjdTakeawayMapper extends BaseMapper<GcgWsjd> {
    /**
     * 获取列表
     *
     * @author liuy
     * @Date 2021-05-18
     */
    Page<GcgWsjdResult> TakeawayList(@Param("page") Page page, @Param("paramCondition") GcgWsjdParam paramCondition);


    /**
     * 获取美团导出列表
     *
     * @author liuy
     * @Date 2021-04-16
     */
    List<GcgWsjd> ExportListM();

    List<GcgWsjd> ExportListMQy(List<String> list);


    /**
     * 获取饿了么导出列表
     *
     * @author liuy
     * @Date 2021-04-16
     */
    List<GcgWsjd> ExportListE();

    List<GcgWsjd> ExportListEQy(List<String> list);

    /**
     * 完成美团外卖
     */
    int updateDoneM(@Param("param")GcgWsjdShenpi param);

    /**
     * 完成饿了么外卖
     */
    int updateDoneE(@Param("param")GcgWsjdShenpi param);

    /**
     * 查图片
     */
    List<GcgWsjd> selectPic(@Param("ids") String[] ids);

    /**
     * 插入下载信息
     */
    int insertPic(@Param("list") List<PictureDownMsg> pictureDownMsgs);

    /**
     * 通过审核
     */
    int updatePassOrBut(@Param("param")GcgWsjdShenpi param);

    /**
     * 批量通过审核
     */
    int updatePassMany(@Param("param")GcgWsjdShenpi param);

    /**
     * 获取树列表
     */
    List<Map<String, Object>> selectMenuTree();

    int insert(@Param("li")GcgWsjdShenpiXq li);

    Long selectId(@Param("id")Long id);

    void updateDmById(@Param("param") GcgWsjd gcgWsjd);

    Map getDm(@Param("gcgWsjdId") Long id);

    List<Map> getDms(@Param("ids") String[] ids);

    String getStatus(@Param("gcgWsjdId") Long id, @Param("type") Integer type);

    IPage<GcgWsjdResult> qyList(Page pageContext, @Param("paramCondition") GcgWsjdParam param, @Param("list") List<String> userList);

    Map getDetail(@Param("wsjdId") String wsjdId);

    int getCountM(@Param("ids") String[] ids);

    int getCountE(@Param("ids") String[] id);
}
